A wireless multihop communications network, such as a mesh network, includes a set of node devices capable of exchanging messages with one another over a wireless medium, typically using radio frequency (RF) communications. Each of the node devices can be primarily a communications device or, alternatively, the communications functionality may be secondary to its primary function. For example, in a given node, the communications circuitry can be a part of a device such as a computer system, a smart appliance, a vehicle, a media device, a piece of industrial equipment (e.g., an instrument, machine, sensor, actuator), and the like. In a mesh architecture the node devices are uniquely addressable, and able to route messages from an originating node device toward the intended destination node. In general, each of the node devices can be an originating and destination node device as well. Thus, node devices perform both, message forwarding, and message origination/consumption functions. This means that the communication channels can be quite busy at certain parts of the network where the message density is relatively higher than at other parts.
Wireless networks in particular face other challenges. For instance, wireless links may not always be reliable: there may be intermittent interfering signals, intermittent obstructions, including large movable objects (e.g., vehicles) moving in and out of the transmission path, weather affecting the quality of radio signal propagation, etc., affecting the signal strength of transmissions seen by the receiving node. Also, certain node devices may be situated near the limits of their radio's communication range, which further compounds signal reception challenges.
Wireless mesh applications need a broadcast transport mechanism to send messages to all or a large set of node devices in the network in a short period of time. Typical communications between node devices are sent using a connection-oriented protocol in which there is a handshaking process of negotiation between node devices before normal communication over the channel begins. Handshaking dynamically sets parameters of a communications channel established between the two node devices. It follows the physical establishment of the channel and precedes normal information transfer. Although connection-oriented communications can be made reliably, the overhead associated with the handshaking can make this mechanism less efficient for the sending of short messages to all nodes in a network. Accordingly, a connection-less (i.e., without the need to establish individual link connections) broadcast transport mechanism is preferable for the wide-scale dissemination of short messages.
Supporting message broadcast in a wireless mesh network has several challenges. For instance, wireless links may be individually unreliable and communications without dedicated connections may be insecure. Moreover, intended recipients may be multiple hops away from the originator of the message, requiring the broadcasts to be re-transmitted to the next hop so that the message can be propagated throughout the network. This activity takes up communications resources, and if not suitable controlled can overload the communication channel. Furthermore, node density may vary across multiple networks and even within the same network. In dense environments, simultaneous message broadcasts sent by different devices within close proximity can interfere with one another, resulting in a “collision” of radio packets that prevents reception of one or more of the broadcasts.
Therefore, a practical solution is needed to provide effective and efficient message broadcasting throughout a wireless network or sub-network that addresses one or more of these challenges.